package top.zhangjianyong.blog.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.List;

/**
 * 阿里云OSS对象存储配置
 * 对应 application.yml 的 blog.oss 配置项
 */
@Data
@Component
@ConfigurationProperties(prefix = "blog.oss")
public class OssProperties {
    /**
     * 阿里云访问密钥ID
     */
    private String accessKeyId;

    /**
     * 阿里云访问密钥Secret
     */
    private String accessKeySecret;

    /**
     * OSS服务端点
     */
    private String endpoint;

    /**
     * OSS区域标识（如 cn-hangzhou）
     */
    private String region;

    /**
     * OSS存储桶名称
     */
    private String bucketName;

    /**
     * 绑定的自定义域名（可选）
     */
    private String domain;

    /**
     * 文件路径前缀（如 blog/）
     */
    private String pathPrefix = "blog/";

    /**
     * 单个文件最大大小（单位：MB，默认100MB）
     */
    private Integer maxFileSize = 100;

    /**
     * 允许上传的文件类型（如 jpg, png, gif, mp4 等）
     */
    private List<String> allowedTypes;
} 